
package com.hlkj.pay.app.merchant.ext.dto.access;
/*
 * Hlpay-Plus aggregate payment system.
 * Copyright (c) 2024-2025 Hlpay Team Copyright has the right of final interpretation.
 */

import java.util.List;

import com.hlkj.pay.app.merchant.ext.impl.MerchantAccessFile;
import com.hlkj.pay.app.merchant.ext.impl.MerchantAccessUploadFile;
import com.hlkj.pay.dto.common.LocationDto;
import com.hlkj.pay.dto.merchant.MerchantAccessDto;
import com.hlkj.pay.dto.merchant.MerchantAccessSignLink;
import com.hlkj.pay.dto.merchant.MerchantWechatConfigDto;
import com.hlkj.pay.dto.merchant.ProviderChannelFeeConfigList;
import com.hlkj.pay.dto.pay.PayCommonAppDto;
import com.hlkj.pay.enums.MerchantEnum;
import com.hlkj.pay.infrastructure.model.pay.PayChannelDictDO;
import com.hlkj.pay.infrastructure.model.pay.PayChannelRequestDO;

import lombok.Data;

/**
 * @author HlpayTeam
 * @date 2024/09/26 10:21
 */
@Data
public class ChannelMerchantAccessContext  extends ChannelMerchantAccessCommonContext{

    /**
     * 进件domain
     */
    private MerchantAccessDto merchantAccessDto;

    /**
     * 进件状态
     */
    private MerchantEnum.ACCESS_STATUS accessStatus;

    /**
     * 费率配置
     */
    private List<ProviderChannelFeeConfigList> merchantFeeConfigList;

    /**
     * 请求参数
     */
    private PayChannelRequestDO beforePayChannelRequestDO;


    /**
     * app list
     */
    private List<PayCommonAppDto> payCommonAppList;

    /**
     * 请求流水号
     */
    private String reqSeqId;
    /**
     *
     */
    private MerchantAccessFile merchantAccessFile;
    /**
     *
     */
    private List<MerchantAccessUploadFile> merchantAccessUploadFiles;

    private List<MerchantAccessSignLink> signLinks;

    private Integer nameCount=null;

    /**
     * 异步请求地址
     */
    private String asyncReturnUrl;

    /**
     * 第三方流程状态 在ext包中的enums中
     */
    private MerchantEnum.CHANNEL_CONFIG_STATUS auditStatus;
    /**
     * 字典数据 部分渠道需要字典回显
     */
    private List<PayChannelDictDO> payChannelDictList;
    /**
     * 坐标信息 部分渠道需要坐标信息
     */
    private LocationDto locationDto;

    /**
     * 手动配置微信dto
     */
    private MerchantWechatConfigDto merchantWechatConfigDto;
}
